﻿using SqlSugar;
using System;

namespace XXX.Models.AS
{
    /// <summary>
    /// 写入U8用的类
    /// </summary>
    public class AS_Warehouse
    {
        public string cWhCode { get; set; }
        public bool ShouldSerialivecWhCode() => !string.IsNullOrEmpty(cWhCode);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cWhName { get; set; }
        public bool ShouldSerialivecWhName() => !string.IsNullOrEmpty(cWhName);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cDepCode { get; set; }
        public bool ShouldSerialivecDepCode() => !string.IsNullOrEmpty(cDepCode);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cWhAddress { get; set; }
        public bool ShouldSerialivecWhAddress() => !string.IsNullOrEmpty(cWhAddress);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cWhPhone { get; set; }
        public bool ShouldSerialivecWhPhone() => !string.IsNullOrEmpty(cWhPhone);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cWhPerson { get; set; }
        public bool ShouldSerialivecWhPerson() => !string.IsNullOrEmpty(cWhPerson);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:False
        /// </summary>           
        public string cWhValueStyle { get; set; }
        public bool ShouldSerialivecWhValueStyle() => !string.IsNullOrEmpty(cWhValueStyle);

        /// <summary>
        /// Desc:
        /// Default:CREATE DEFAULT dbo.Warehouse_bWhPos_D AS 0
        /// Nullable:False
        /// </summary>           
        public bool bWhPos { get; set; }

        /// <summary>
        /// Desc:
        /// Default:CREATE DEFAULT dbo.Warehouse_iWhFundQuota_D AS 0
        /// Nullable:True
        /// </summary>           
        public double? iWhFundQuota { get; set; }
        public bool ShouldSerializeiWhFundQuota() => iWhFundQuota.HasValue;

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cMonth { get; set; }
        public bool ShouldSerialivecMonth() => !string.IsNullOrEmpty(cMonth);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cWhMemo { get; set; }
        public bool ShouldSerialivecWhMemo() => !string.IsNullOrEmpty(cWhMemo);

        /// <summary>
        /// Desc:
        /// Default:0
        /// Nullable:False
        /// </summary>           
        public bool bFreeze { get; set; }

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cBarCode { get; set; }
        public bool ShouldSerialivecBarCode() => !string.IsNullOrEmpty(cBarCode);

        /// <summary>
        /// Desc:
        /// Default:1
        /// Nullable:False
        /// </summary>           
        public bool bMRP { get; set; }

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public byte[] pubufts { get; set; }
        public bool ShouldSerializepubufts() => pubufts != null && pubufts.Length > 0;

        /// <summary>
        /// Desc:
        /// Default:0
        /// Nullable:False
        /// </summary>           
        public bool bROP { get; set; }

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public short? iFrequency { get; set; }
        public bool ShouldSerializeiFrequency() => iFrequency.HasValue;

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cFrequency { get; set; }
        public bool ShouldSerialivecFrequency() => !string.IsNullOrEmpty(cFrequency);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public short? iDays { get; set; }
        public bool ShouldSerializeiDays() => iDays.HasValue;

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public DateTime? dLastDate { get; set; }
        public bool ShouldSerializedLastDate() => dLastDate.HasValue;

        /// <summary>
        /// Desc:
        /// Default:0
        /// Nullable:False
        /// </summary>           
        public short iWHProperty { get; set; }

        /// <summary>
        /// Desc:
        /// Default:0
        /// Nullable:False
        /// </summary>           
        public bool bShop { get; set; }

        /// <summary>
        /// Desc:
        /// Default:1
        /// Nullable:False
        /// </summary>           
        public bool bControlSerial { get; set; }

        /// <summary>
        /// Desc:
        /// Default:1
        /// Nullable:False
        /// </summary>           
        public bool bInCost { get; set; }

        /// <summary>
        /// Desc:
        /// Default:1
        /// Nullable:False
        /// </summary>           
        public bool bInAvailCalcu { get; set; }

        /// <summary>
        /// Desc:
        /// Default:0
        /// Nullable:False
        /// </summary>           
        public bool bProxyWh { get; set; }

        /// <summary>
        /// Desc:
        /// Default:0
        /// Nullable:False
        /// </summary>           
        public short iSAConMode { get; set; }

        /// <summary>
        /// Desc:
        /// Default:0
        /// Nullable:False
        /// </summary>           
        public short iEXConMode { get; set; }

        /// <summary>
        /// Desc:
        /// Default:0
        /// Nullable:False
        /// </summary>           
        public short iSTConMode { get; set; }

        /// <summary>
        /// Desc:
        /// Default:0
        /// Nullable:False
        /// </summary>           
        public bool bBondedWh { get; set; }

        /// <summary>
        /// Desc:
        /// Default:0
        /// Nullable:False
        /// </summary>           
        public bool bWhAsset { get; set; }

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public double? fWhQuota { get; set; }
        public bool ShouldSerializefWhQuota() => fWhQuota.HasValue;

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public DateTime? dWhEndDate { get; set; }
        public bool ShouldSerializedWhEndDate() => dWhEndDate.HasValue;

        /// <summary>
        /// Desc:
        /// Default:1
        /// Nullable:True
        /// </summary>           
        public bool? bCheckSubitemCost { get; set; }
        public bool ShouldSerializebCheckSubitemCost() => bCheckSubitemCost.HasValue;

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cPickPos { get; set; }
        public bool ShouldSerialivecPickPos() => !string.IsNullOrEmpty(cPickPos);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public bool? bEB { get; set; }
        public bool ShouldSerializebEB() => bEB.HasValue;

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public DateTime? dModifyDate { get; set; }
        public bool ShouldSerializedModifyDate() => dModifyDate.HasValue;

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cWareGroupCode { get; set; }
        public bool ShouldSerialivecWareGroupCode() => !string.IsNullOrEmpty(cWareGroupCode);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cProvince { get; set; }
        public bool ShouldSerialivecProvince() => !string.IsNullOrEmpty(cProvince);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cCity { get; set; }
        public bool ShouldSerialivecCity() => !string.IsNullOrEmpty(cCity);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cCounty { get; set; }
        public bool ShouldSerialivecCounty() => !string.IsNullOrEmpty(cCounty);

        /// <summary>
        /// Desc:
        /// Default:
        /// Nullable:True
        /// </summary>           
        public string cFactoryCode { get; set; }
        public bool ShouldSerialivecFactoryCode() => !string.IsNullOrEmpty(cFactoryCode);
    }
}